package com.chen.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.chen.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 订单表
 * </p>
 *
 * @author 陈永鹏
 * @since 2019-03-26
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("zs_order")
public class Order extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 订单主键
     */
    @TableId(value = "o_id", type = IdType.AUTO)
    private Integer o_id;

    /**
     * 用户ID
     */
    private Integer u_id;

    /**
     * 订单号
     */
    private String order_sn;

    /**
     * 订单标题
     */
    private String order_title;

    /**
     * 订单类型 同商品的类型
     */
    private Integer order_type;

    /**
     * 订单的展示图片，默认取第一个产品的图片。
     */
    private String order_img;

    /**
     * 订单创建日期
     */
    private Integer create_time;

    /**
     * 联系人姓名
     */
    private String contact_name;

    /**
     * 联系人电话
     */
    private String contact_tel;

    /**
     * 联系人身份证号码
     */
    private String contact_id_card;

    /**
     * 二维码保存位置
     */
    private String qr_code;

    /**
     * 票期开始时间
     */
    private Integer start_time;

    @TableField(exist = false)
    private String span_start_time;

    /**
     * 票期结束时间
     */
    private Integer end_time;

    /**
     * 时段，只有预约的时候才会有。
0: 8:30-10:30，
1: 10:30-12:30，
2: 12:30-14:30，
3: 14:30-16:30，
4: 16:30-17:00
     */
    private Integer span_time;

    /**
     * 总金额
     */
    private Integer total_amount;

    /**
     * 订单原始金额
     */
    private Integer ori_amount;

    /**
     * 优惠金额
     */
    private Integer dis_amount;

    /**
     * 数量，参团人数或门票数量
     */
    private Integer quantity;

    /**
     * 是否为预约订单， 1是，0否
     */
    private Boolean is_appointment;

    /**
     * 是否为拼团订单 1是 0否
     */
    private Boolean is_collage;

    /**
     * 是否退款 1是 0不是
     */
    private Boolean is_refund;

    /**
     * 退款原因
     */
    private String refund_reason;

    /**
     * 退款订单号 TD开头加SN
     */
    private String refund_sn;

    /**
     * 退款金额 单位分
     */
    private Integer refund_amount;

    /**
     * 发起退款申请的时间
     */
    private Integer refund_time;

    /**
     * 失败原因
     */
    private String refund_fail_reason;

    /**
     * 订单状态，10下单未支付，20 支付成功未使用，30退款中，31商家处理中，32微信处理中，40退款成功，41退款拒绝，50完成,51逾期自动入园,60拼团中, 70拼团失败, 80拼团成功, 88已过期, 90取消, 99关闭
     */
    private Integer status;

    /**
     * 是否被用户删除 1删除 0没删
     */
    private Boolean is_delete;

    /**
     * 接口返回的订单ID
     */
    private String trans_code;

    /**
     * 入园取票时间
     */
    private String play_time;

    /**
     * 微信是否收款，0没收，1收了
     */
    private Boolean wx_pay_sucess;

    /**
     * 退款成功 1 成功，0没成功
     */
    private Boolean wx_refund_success;

    /**
     * 邮政返回的订单状态存储，-1 查无此单，0-未入园；1-身份证入园;2-手机二维码入园;3-窗口取票入园；4-自助取票入园;…;7-过期 自动入园;8-景区取消；9-电商已取消
     */
    private Boolean yz_status;





}
